package com.youlai.system.service;

import com.youlai.system.model.entity.AirPlane;
import com.youlai.system.model.form.AirPlaneForm;
import com.youlai.system.model.query.AirPlaneQuery;
import com.youlai.system.model.vo.AirPlaneVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 机型管理服务类
 *
 * @author youlai买国涛
 * @since 2024-11-05 16:30
 */
public interface AirPlaneService extends IService<AirPlane> {

    /**
     *机型管理分页列表
     *
     * @return
     */
    IPage<AirPlaneVO> getAirPlanePage(AirPlaneQuery queryParams);

    /**
     * 获取机型管理表单数据
     *
     * @param id 机型管理ID
     * @return
     */
    AirPlaneForm getAirPlaneFormData(Long id);

    /**
     * 新增机型管理
     *
     * @param formData 机型管理表单对象
     * @return
     */
    boolean saveAirPlane(AirPlaneForm formData);

    /**
     * 修改机型管理
     *
     * @param id   机型管理ID
     * @param formData 机型管理表单对象
     * @return
     */
    boolean updateAirPlane(Long id, AirPlaneForm formData);

    /**
     * 删除机型管理
     *
     * @param ids 机型管理ID，多个以英文逗号(,)分割
     * @return
     */
    boolean deleteAirPlanes(String ids);



    //获取空闲飞机分页
    IPage<AirPlaneVO> getPlaneNotFly(AirPlaneQuery queryParams);

    AirPlane getPlaneById(long planeId);

}
